home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
64'er 1991 November
/
64er_Magazin_91-11_1991_Markt__Technik_de_Side_A.d64
/
cutter $c000.src
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2022-10-26
|
2KB
|
48 lines
100 sys36864:.opt oo:*= $c000
110 ;
120 ;**********************************
130 ;* cutter $c000-$c04c *
140 ;* (w)1991 by silvan reinhold *
150 ;**********************************
160 ;
170 : jsr getpar ;adresse der startzeile errechnen
180 : sta $57 ;low- und
190 : stx $58 ;high-byte speichern
200 : jsr getpar ;adresse der endzeile berechnen
210 : sta $59 ;low- und
220 : stx $5a ;high-byte zweimal
230 : sta $5b ;speichern
240 : stx $5c
260 : ldy #$00 ;schleife vorbereiten
270 : ldx #$01 ;(zwei durchlaeufe)
280 :label0 lda ($59),y ;die beiden letzten bytes auf
290 : pha ;dem stack ablegen und
300 : tya ;durch nullbytes (programmende)
310 : sta ($59),y ;ersetzen
320 : inc $59 ;dabei programmendezeiger auf das
330 : bne label1 ;byte hinter dem letzten nullbyte
340 : inc $5a ;stellen
350 :label1 dex
360 : bpl label0
380 : jsr $aefd ;kein komma, dann syntax error
390 : jsr $e1d4 ;parameter zum speichern holen
400 : lda #$57 ;start- und
410 : ldx $59 ;endadresse uebergeben
420 : ldy $5a
430 : jsr $ffd8 ;zum speichern
450 : ldy #$01 ;zwei schleifendurchlaeufe vorbereiten
460 :label2 pla ;die ersetzten bytes wieder
470 : sta ($5b),y ;vom stapel zurueckholen
480 : dey
490 : bpl label2
500 : rts ;ende
510 ;----------------------------------
520 :getpar jsr $aefd ;kein komma, dann syntax error
530 : jsr $ad8a ;zeilennummer aus dem basictext
540 : jsr $b7f7 ;holen
550 : jsr $a613 ;startadresse berechnen
560 : lda $5f ;low-byte in den akku (high-byte im x-register)
570 : rts ;zurueck vom unterprogramm
580 ;----------------------------------
590 : .end